﻿using System;
using System.Collections.Generic;
using System.Text;
using DotNet.Data;
using DotNet.Model;
using DotNet.Common;

namespace DotNet.Business
{
    /// <summary>
    /// 缓存public pageSeo GetModel(string pageType)
    /// </summary>
    public class pageSeoBll
    {
        pageSeoDal pageDal = new pageSeoDal();
        #region 是否存在该记录
        /// <summary>
        /// 是否存在该记录
        /// </summary>
        public bool Exists(int pageSeoId)
        {
           return  pageDal.Exists(pageSeoId);
        }
        #endregion

        #region 获得页面优化列表
        /// <summary>
        /// 获得页面优化列表
        /// </summary>
        /// <returns></returns>
        public IList<pageSeo> GetModel()
        {
            return pageDal.GetModel();
        }
        #endregion

        #region 根据页面优化号查询实体
        /// <summary>
        /// 根据页面优化号查询实体
        /// </summary>
        /// <param name="pageSeoId"></param>
        /// <returns></returns>
        public pageSeo GetModel(int pageSeoId)
        {
            return pageDal.GetModel(pageSeoId);
        }
        #endregion

        #region 修改页面优化信息
        /// <summary>
        /// 修改页面优化信息
        /// </summary>
        /// <param name="pageseo"></param>
        /// <returns></returns>
        public bool Update(pageSeo pageseo)
        {
            CacheUtil.RemoveByRegexp(@"pageSeo_.+");
            return pageDal.Update(pageseo);
        }
        #endregion

        #region 删除页面优化根据页面优化号
        /// <summary>
        /// 删除页面优化根据页面优化号
        /// </summary>
        /// <param name="pageSeoId"></param>
        /// <returns></returns>
        public bool Delete(int pageSeoId)
        {
            CacheUtil.RemoveByRegexp(@"pageSeo_.+");
            return pageDal.Delete(pageSeoId);
        }
        #endregion

        #region 添加页面优化
        /// <summary>
        /// 添加页面优化
        /// </summary>
        /// <param name="pageSeo"></param>
        /// <returns></returns>
        public bool Insert(pageSeo pageseo)
        {
            CacheUtil.RemoveByRegexp(@"pageSeo_.+");
            return pageDal.Insert(pageseo);
        }
        #endregion

        #region 根据sql语句查询实体---郑同飞
        /// <summary>
        /// 根据sql语句查询实体---郑同飞
        /// </summary>
        /// <param name="sql">优化的页面</param>
        /// <returns></returns>
        public pageSeo GetModel(string pageType)
        {
            string CKey = "pageSeo_" + pageType;
            if (!CacheUtil.IsExist(CKey))
            {
                CacheUtil.Insert(CKey, pageDal.getSeoBySql(pageType), 10 * 24 * 60 * 60);
            }
            return CacheUtil.Read(CKey) as pageSeo;
        }
        #endregion
    }
}
